http://b.jtthink.com/read.php?tid=1050
http://b.jtthink.com/read.php?tid=676
本课程由于Go Micro v2框架停更,因此被迫全面升级技术栈,新课程不再基于Go Micro框架。并全面采用k8s+领域驱动
具体看这里
本课程的代替课程在这里 《Go微服务实训第一阶:商品和下单》 这里是课程技术栈说明
一如既往的开张课。介绍下本课程的基本内容。这里我们使用的是go-micro v2版本+gin+改造过后的三层架构技术栈来完成
在v2版本下快速创建服务的基本姿势
由于go-micro的版本兼容很差,因此看本课时之前配合第17课一起看。 第17课有排坑说明
按照上节课的套路,我们来做个练习
服务和服务之间的基本调用
实际开发我们不一定使用全部grpc。很多业务API还是会使用http api。因此我们先看下如何使用纯粹的http api嵌入go-micro
手写http api是不方便的。我们需要集成gin作为我们http api框架
本课时我们完成go-micro+gin+三层架构的模式集成。使得同一套代码既可以支持grpc也可以支持http api,同时还能使用go-micro体系的功能
之前基础课没有讲到配置,因此今天来介绍下配置工具的使用
我们后面的配置主要使用的yaml方式。
后面我们主要使用的是配置中心。今天先做基本介绍
有了配置中心,接下来我们要开始规划下配置的加载方式
一旦使用配置中心后,网站初始化方式就要发生改变。先用纯gin来演示一番,后面需要整合到go-micro中去
紧接着上节课。用了配置中心后,我们让网站启动归网站启动,配置中心加载归配置中心加载。互不干扰
今天我们来集成ORM。用了配置中心后集成方式和原来是完全不同的
有了前面几课时的铺垫。本课时我们把go-micro、gin、配置中心和ORM集成在一起
录着录着go-micro又升级了。2.5和2.4竟然不兼容。今天做个补充课时,后面再变再补充
重点课时。当配置修改后我们需要重载某些组件,这里面涉及到一些代码策略和技巧
这章开始干。先说下课程表设计,以及protobuf+gorm下日期格式处理
我们把数据库操作模拟java的方式封装在一个部分。先做初级封装
今天是个练习课,我也不做课前准备。大家跟着视频节奏一起练习
用来记录课程点击量、收藏数、评论数。这个表后面有大用处
一个请求涉及到多个查询时代码的写法
我们花几课时穿插着讲一下前端。我们使用的是vue+后端渲染。
快速说下前端UI框架。UI不是本课程重点,仅仅是用现成的进行套用
先把首页的基本雏形说明下,以及后面要做的功能点
短评功能说明,以及表设计。后面要开发此功能
今天我们提供了两千多条测试数据,并拆分下路由和页面
和开发SPA一样。我们使用axios来读取课程列表
讲解下如何带分页信息输出
今天是细节课。很多地方需要注意,并且定制错误页面
今天我们完成整个课程列表和页码 以及UI效果
本章节我们开始自建网关。先讲下基本结构。我们的网关会在部分功能上同款spring gateway
网关中比较重要的是路由模块。我们先从最基本的开始
今天我们完善和优化路由匹配机制
本课时完成整个Predicates的判断。下节课我们重点来开发filter
今天进入自建网关路由模块的重点课时:过滤器
基本机制弄好了。那么我们怎么从配置文件加载我们的过滤器呢?这是重点
搞定了这一步,我们就可以完成过滤器的执行
有了前面几课时的基础,我们今天来做个头过滤器
今天我们来讲下插件化的思路。标题加了"选"字。大家可以选择性的看(建议看)。
因为后面我们也要使用gin来完成一些单体功能。所以插件化机制也是可以用在gin里面的。今天来演示下
由于前面我们设计了良好的接口机制,使得整合JS插件机制并不是很难
上节课的课后作业,让我们的JS插件也支持配置参数
之前我们的过滤器执行是无序的,今天来加入顺序处理。
今天给大家做个实例,并使用JS插件的方式来完成一个修改Query参数的插件
之前的过滤器都是处理请求过滤,响应过滤怎么处理?这里是有一定代码技巧的,今天主要讲下响应过滤器的实现
一共2分钟,快速在我们的网关中写一个跨域过滤器
我们在go-micro框架基础上开发同款spring gateway网关,固定路由模块已经完成,接下来要实现服务发现。本课时是原理
我们把上节课的内容集成到网关中。(并不简单)
下周要实现grpc的路由转发。因此本课时做个原理讲解
今天这节课我们完成grpc的转发。后面还需要优化
今天开始我们使用阿里Sentinel进行流控、熔断器等。先做个简单的学习,最后要整合到我们的手撸网关里
我们先从Gin单体API开始 进行限流示例
沿着上节课,使用另外一种模式:匀速排队
今天我们来讲一下热点参数限流的基本使用
sentinel的核心功能之一:熔断器。先从单体API开始
熔断器的第二种策略:出错和异常熔断基本配置方式
本课时进入第五章,我们学习链路跟踪
部署好服务端后,接下来我们先选用gin+客户端进行手工上报.(课件在下一课时)
承接上节课,我们完成gin代码的编写
今天学习个小细节,设置tag来查看链路状态
今天进入第六章:监控工具的使用,今天先入门安装Prometheus
上节课讲到有很多exporter,譬如mysql、redis等。今天我们初步部署下mysql的exporter
先初步安装下,后面我们再来说细节
前面我们是现成工具使用。今天我们来写代码集成到监控中
今天是新的一章,也是课程技术栈进行全面升级的一章。本课时先做个介绍
为了兼顾还没来得及学习前置课程的同学,我们先用rancher可视化部署一个简单服务
后面大部分情况下我们使用yaml的方式来进行部署
go-micro除了框架还有micro工具,我们需要完成micro工具的部署
前面我们使用了etcd,由于使用了k8s,那么直接使用k8s作为服务中心就行了
今天是一个复习课,和之前差不多。回顾下基本步骤。下节课部署到k8s中
承接上节课,我们回顾和复习http调用grpc,并且部署到k8s中
新课程在这里 https://www.jtthink.com/course/138
问:为什么有的课程会涨价?
答:课程刚开始更新时是比较便宜的,随着课时的增多会逐步涨到原价
问:课程价格是每节课都要这么多钱?
答:课程价格是指该课程下面所有课时的总价,
问:为啥有课程最后显示课时正在更新?
答:说明我们的讲师还在录制中
问:购买课程后能看多久?
答:终身在线观看